package ee.objectCloner;

public interface CloneAdvisor {
	
	public enum CloneAdvise
	{
		CLONE,
		COPY,
		USE_SOURCE
	}
	
	public CloneAdvise getAdvise(Object source, Object destination);
	public CloneAdvise getAdvise(Object source);
	
	public boolean canAdvise(Class<?> sourceType, Class<?> destinationType);
	public boolean canAdvise(Class<?> sourceType);
}
